U.S. Pat. No. 5,276,440, issued Jan. 4, 1994, to C. H. Jolissaint et al., and assigned to applicants' assignee, a system is described in which each and every device in a communications network reports its physical connections to other devices to a centralized network manager. The network manager uses this information to maintain a topological data base which, in turn, can be used to analyze error reports to determine the location of device failures. This prior art system is very useful for error detection and correction in the physical network, but is of limited value for identifying and evaluating one or more communication paths through the network.
In order to fully analyze the performance of a transmission network, it is necessary to be able to trace and test the path of each connection through the network. These connections may be fixed, manually changed, or dynamically altered. The resources that make up such paths through the network are of two types, packet switched resources and circuit switched resources. Packet switched resources determine the path through which the data is transmitted by looking at the information being transmitted. These packet switched resources are typically connected together to form networks controlled by protocols such as the Open Systems Interconnection (OSI) systems, Traffic Control Point/Interconnection Protocol (TCP/IP), X.25, IBM's Systems Network Administration (SNA), Digital Equipment Corporation's DECnet, and so forth. Circuit switched resources, on the other hand, establish the path through which the data is to be transmitted before the data is transmitted, and do not look at the information being transmitted. Circuit switched resources can also be connected together into networks using, for example, Multiplexors, Private Branch Exchange/Central Branch Exchange (PBX/CBX) private telephone circuits, the Public Switched Network (PSN), data modems, Customer Service Units (CSUs), and so forth. Indeed, typically packet switched resources and circuit switched resources are combined into a single network. In such a complex network, it is very difficult to determine the actual resources which are used to make up any particular connection or path. Moreover, the network can dynamically change the path without the knowledge of the end user or the host computers.
When a problem is encountered in a complex network, for example, if the end user's response time changes by an order of magnitude from day to day, it is very difficult to determine what the actual active path through the network is at any given time. The ability to determine the actual path, however, is critical to determining the cause of the problem. The normal preferred path, for example, might be dynamically altered due to a failure in one of the resources and cause a radical change in the properties of the overall connection. Without a detailed knowledge of the constituent resources in the path, such changes in performance are impossible to explain or correct.
Unlike the prior art system of U.S. Pat. No. 5,276,440, which reports the physical interconnections between all of the resources, it is desirable to string together only the interconnections of those resources included in a particular data connection, and to do so only on request. Determining which of the available resources are involved in a particular connection at a particular time is itself a very difficult problem. Testing only those resources involved in a particular connection at a particular time is an even more difficult problem. This problem is exacerbated when there are many different packet networking protocols used in the communication path, some of which may be encapsulated inside of other networking protocols. It is not, feasible for each protocol to look into another protocol.